/*
 * @Author: 码农 2646995216@qq.com
 * @Date: 2025-03-18 23:55:31
 * @LastEditors: 码农 2646995216@qq.com
 * @LastEditTime: 2025-03-19 15:14:02
 * @FilePath: /netcomputer/servermain.cc
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
#include "protocol.hpp"
#include "server_tcp.hpp"
#include"calculator.hpp"



int main(int args, char *argv[])
{
	//由于我们输入的是字符串，所以我们要将其变为整数
	uint16_t port = stoi(argv[1]);

	//将回调函数绑定Computer::Calculator函数，因为类中函数默认自带this指针，所以将该函数的第一个参数替换为con
	//这使我们传参时，可以直接传给第二个参数，placeholders::_1：代表第二个参数为任意值
	//第一个参数，之所以绑定Computer con，是因为我们需要调用到该类中的函数
	Computer con;
	TcpServer* tcsr=new TcpServer(port,bind(&Computer::Calculator,&con,placeholders::_1));
	tcsr->ServerInit();
	tcsr->ServerStart();

	return 0;
}